home *** CD-ROM | disk | FTP | other *** search
/ Ultimate Add-On's (Tournament Edition) / Cybercore Publishing - Ultimate Add-on's Tournament Edition.iso / tools / doom / dm2conv / dm2conv.doc next >
Text File  |  1995-03-04  |  18KB  |  451 lines

  1.  
  2.                        =======================
  3.                             DM2CONV v1.7ß
  4.                          by Vincenzo Alcamo
  5.                        =======================
  6.  
  7.  
  8.  
  9. ** DESCRIPTION
  10. --------------
  11. This program converts DOOM levels to run with DOOM II or HERETIC:
  12. now you can play all those maps with you favourite game!
  13. DM2CONV features:
  14.    - DOOM II support
  15.    - HERETIC support
  16.    - level conversion and remapping
  17.    - music conversion and remapping
  18.    - wall/floor texture remapping
  19.    - resource renaming
  20.    - object substitution with difficulty level
  21.    - fully configurable
  22.  
  23.  
  24. IMPORTANT: read carefully the DISTRIBUTION LICENSE paragraph.
  25.  
  26.  
  27.  
  28. ** WHY I MUST CONVERT A PWAD?
  29. -----------------------------
  30. Levels designed for DOOM are incompatible with DOOM II or HERETIC
  31. because some resources (ie: graphic bitmap) and objects only exist
  32. inside the DOOM main wad file: DOOM.WAD.
  33. Nevertheless, if you have played DOOM II or HERETIC you should have seen
  34. new monsters and things (the SuperShotgun, the Ethereal Crossbow...).
  35.  
  36. DM2CONV handles the conversion process in a very easy way.
  37. Let suppose you want to run SNIPER.WAD (a well-made level by Eric C.
  38. Reuter) with DOOM II; just execute the following command:
  39.     DM2CONV SNIPER.WAD SNIPER2.WAD @DOOM2.RSP
  40. For HERETIC you have to execute:
  41.     DM2CONV SNIPER.WAD SNIPERH.WAD @HERETIC.RSP
  42. This is all you must know to use this program. Simple and effective.
  43.  
  44.  
  45.  
  46. ** HOW THE CONVERSION WORKS
  47. ---------------------------
  48. The differences between DOOM and DOOM II (or HERETIC) are the following:
  49.    - many resources have different names
  50.    - most wall/floor textures are different
  51.    - new things or missing things (for HERETIC)
  52. DM2CONV renames the resource to their appropriate names, remaps the
  53. textures to similar ones, changes the objects.
  54.  
  55. The syntax is:
  56.  
  57. DM2CONV <input> [output] [/mapnum] [/M[=num]] [/DEBUG] [/IGNORE]
  58.         [/HERETIC] [/TEXTURE[=file]] [/FLOOR[=file]] [/NOCONV]
  59.         [/SEED[=num]] [/NOCHECK] [replacements].. [@response]...
  60.         [/R:name1=name2] [/R=file] [/LIST] [/EXAMPLES] [/NOTES]
  61.  
  62. input
  63.    This parameter is required: it specifies the name of the wad to
  64.    convert. All the other parameters are optional.
  65.  
  66. output
  67.    This is the name of the output wad.
  68.    If a file of the same name already exists, it is deleted.
  69.    If this parameter is omitted, the input file is overwritten.
  70.    Caution: make a backup copy of the files you convert since there is
  71.    no way back!
  72.  
  73. /mapnum
  74.    mapnum is a number between 1 and 32 (DOOM II) or between 1 and 27
  75.    (HERETIC). This parameter enables the level remapping.
  76.    If /mapnum is omitted levels starts from MAP01 (only for DOOM II).
  77.    examples:
  78.      /5
  79.        DOOM II: level names start from MAP05
  80.        HERETIC: level names start from E1M5
  81.      /12
  82.        DOOM II: level names start from MAP12
  83.        HERETIC: level names start from E2M3
  84.    Please note that the first level found is remapped to the level
  85.    specified by mapnum, the second will be mapnum+1, etc.
  86.  
  87. /M[=num]
  88.    num is a number between 1 and 32 (DOOM II) or between 1 and 27
  89.    (HERETIC). This parameter enables the music remapping.
  90.    If /M is omitted there is no music remapping.
  91.    The =num subparameter specify the level for the first music.
  92.    If =num is omitted, the musics are remapped accordingly to the
  93.    level they belong: if E1M1 is remapped to E2M3, then D_E1M1
  94.    is renamed to MUS_E2M3 (HERETIC example).
  95.    If =num is specified, the musics are remapped starting from
  96.    the music for level num: with /M=9 the first music becomes
  97.    MUS_E1M9, the second becomes MUS_E2M1 and so on (HERETIC).
  98.    Please note that the first music found is remapped to the level
  99.    specified by num, the second will be num+1, etc.
  100.    Along the other music resources, only the intermission music
  101.    is renamed to the appropriate name for the selected game.
  102.  
  103. /DEBUG or /D
  104.    This switch enables the debug mode.
  105.    All object substitutions are listed verbosely.
  106.  
  107. /IGNORE or /I
  108.    This switch specifies that DM2CONV must ignore that the source file
  109.    has no levels.
  110.    This is useful to make object substitutions over an already converted
  111.    file (especially for DOOM II).
  112.  
  113. /HERETIC
  114.    This switch enables the DOOM_to_HERETIC conversion.
  115.    If it is omitted, the default DOOM_to_DOOM2 conversion is performed.
  116.    Please note that I have only tested the shareware version of HERETIC:
  117.    textures and objects remapping use only the resources found in the
  118.    shareware HERETIC1.WAD.
  119.    This is the only reason why DM2CONV is a beta version.
  120.  
  121. /TEXTURE[=file]
  122. /TEXTURE:name1=name2
  123.    The TEXTURE switch enables the wall texture remapping.
  124.    This is required for HERETIC and is optional for DOOM II, but only if
  125.    you use the patch wad DM2CONV.WAD created by DM2MKWAD.
  126.    The texture remapping simply renames texture not found in DOOM II or
  127.    HERETIC with similar ones that exist in the target game.
  128.    For DOOM II conversions I recommend you to use DM2CONV.WAD, thus
  129.    avoiding the TEXTURE switch.
  130.    The =file subparameter specify a text file containing a list of
  131.    texture names and their new names: texture are renamed using this
  132.    list and the one embedded into the executable.
  133.    The second syntax specify a single texture and its new name.
  134.    You may use comments inside your list files: simply start them with
  135.    one of the following characters ';#%[
  136.    Multiple /TEXTURE switches may be used at the same time.
  137.    /TEXTURE may be abbreviated with /T.
  138.  
  139. /FLOOR[=file]
  140. /FLOOR:name1=name2
  141.    The FLOOR switch enables the floor texture remapping.
  142.    This is required for HERETIC: it does not work for DOOM II.
  143.    See /TEXTURE for detail.
  144.    Multiple /TEXTURE switches may be used at the same time.
  145.    /FLOOR may be abbreviated with /F.
  146.  
  147. /R=file
  148. /R:name1=name2
  149.    This switch enables the custom resource renaming.
  150.    The =file subparameter specify a text file containing a list of
  151.    resource names and their new names.
  152.    You may use comments inside your list files: simply start them with
  153.    one of the following characters ';#%[
  154.    The second syntax specify a single resource and its new name.
  155.    Multiple /R switches may be used at the same time.
  156.    example:
  157.      /R:DEMO1=D1 /R:DEMO2=D2 /R:DEMO3=D3
  158.      These switches eliminate the demo resources: DOOM demos are not
  159.      compatible with DOOM II/HERETIC.
  160.    See /TEXTURE for more detail on list files.
  161.  
  162. /NOCONV
  163.    This switch disables the resource remapping: levels, musics, skies.
  164.    This is useful if you use the /R switch over an already converted
  165.    wad. This switch does not disable the object substitution nor the
  166.    texture remapping.
  167.  
  168. /SEED[=num]
  169.    SEED specifies the random number generator's seed.
  170.    By default the seed is 0.
  171.    If /SEED=num is specified, the seed is num.
  172.    if only /SEED is specified, the seed is random.
  173.    This parameter is only used by the object substitution algorithm.
  174.  
  175. /NOCHECK or /N
  176.    This switch enable the use of any number for the object substitution.
  177.    By default, only the numbers shown by the /LIST switch are accepted.
  178.    This is useful to change unusual objects into others: for example,
  179.    medikits (2012) into deathmatch starts (11).
  180.  
  181. replacements
  182.    This parameter specify an object substitution rule.
  183.    replacements is a string in the format:
  184.      obj1[:flags]=obj2[@num[%]][:flags]
  185.    More than one replacement may be specified.
  186.    See OBJECT SUBSTITUTION for details.
  187.  
  188. @response
  189.    response is the name of a text file containing additional parameters
  190.    to DM2CONV.
  191.    The response file is necessary if all the parameters cannot stay on
  192.    the command line (which is normally limited to 128 characters).
  193.    More than one response files are allowed.
  194.    Response files cannot be nested: you can not specify a @file inside
  195.    another response file.
  196.    You may use comments inside your response files: simply start them
  197.    with one of the following characters ';#%[
  198.  
  199. /HELP or /H or /?
  200.    This switch will display the help text.
  201.    The help screen will appear if no source was specified.
  202.  
  203. /LIST or /L
  204.    This switch will display the list of known objects.
  205.  
  206. /EXAMPLE or /EXAMPLES or /E
  207.    This switch will display some substitution examples.
  208.  
  209. /NOTES or /NOTE
  210.    This switch will display special notes regarding the program.
  211.  
  212.  
  213.  
  214. ** OBJECT SUBSTITUTIONS
  215. -----------------------
  216. All things in DOOM are objects: lamps, monsters, weapons, power-ups,
  217. obstacles, other players, etc..
  218. DOOM II supports all DOOM objects plus others: the super shotgun, the
  219. megasphere, many new monsters, etc..
  220. HERETIC hasn't any of the DOOM objects.
  221. With DM2CONV you can transform specified DOOM objects into DOOM II or
  222. HERETIC objects. The object substitution is such a process and is
  223. enabled by specifying at least one replacement.
  224.  
  225. A replacement is a string describing what objects to transform and how
  226. to transform them. The simplest replacement string is of the format:
  227.    object1=object2
  228. This replacement will transform each object of the type object1 to one
  229. of the type object2.
  230. An object is specified by its number, its shortname, its name or an
  231. initial part of its name: type DM2CONV /LIST to obtain the list of all
  232. recognized objects; if you want to change objects that are not in this
  233. list, you can specify the /NOCHECK parameter.
  234. The most used substitution for DOOM II is:
  235.    SHOTGUN=SUPERSHOTGUN
  236.  
  237. You can change multiple objects:
  238.    obj1,obj2=obj3
  239. all objects of type obj1 and obj2 are transformed into obj3 objects.
  240.    obj1=obj2,obj3
  241. all obj1 objects becomes obj2 and obj3 (they are chosen randomly in
  242. equal proportions: this is why the /SEED parameter exists).
  243. You can specify any number of source objects and any number of
  244. destination objects.
  245.  
  246. You can also specify quantities (only for the destination objects):
  247.    IMP=DEMON@5
  248. In the above example, only 5 IMPs become DEMONs; the others remain IMPs.
  249.    IMP=DEMON@5,SPECTRE@10
  250. Five IMPs become DEMONs and ten become SPECTREs.
  251. If the number of source objects is less than the destination, the
  252. quantities are adjusted proportionally.
  253. In the above example if there are only 9 IMPS, 3 become DEMONs (33%)
  254. and 6 become SPECTREs (66%).
  255. Another example:
  256.    IMP=DEMON@5,SPECTRE
  257. 5 IMPs become DEMONs, the remaining become SPECTRE: if there are less
  258. than 5 IMPs, all of them become DEMONs.
  259. That is, if you don't specify a quantity the remaining objects are used.
  260.  
  261. The quantity can be a percentual:
  262.    IMP=DEMONS@50%
  263. In this way, 50% of IMPs become DEMONs.
  264. You can mix all of the above rules:
  265.    IMP,DEMON=BARON@2,LOSTSOUL@50%,TROOPER
  266. The % sign can be replaced with any of the following signs $ # &
  267. This is because the % character has a special meaning for DOS: you must
  268. avoid using the % sign on the command line of DM2CONV; response files
  269. are not affected by this limitation.
  270.  
  271. In DOOM/DOOM II/HERETIC the difficulty level chosen when you start a new
  272. game will affect the objects in a considerable manner:
  273.    - new objects may appear
  274.    - other objects disappear
  275. The reason is that each object has flags that specify in which level of
  276. difficulty it should appear.
  277. There are five flags:
  278.    1 - object appears on difficulty levels 1 and 2
  279.    2 - object appears on difficulty level 3
  280.    3 - object appears on difficulty levels 4 and 5
  281.    D - object is deaf (useful only for monsters)
  282.    M - object appears ONLY in multiplayer mode
  283. Starting from version 1.5, DM2CONV supports these flags in the
  284. substitution rules; the complete syntax is:
  285.    sobj1[:flags]...=dobj1[@quantity[%]][:flags]...
  286.  
  287. Each object can have one or more of the above flags.
  288. If difficulty flags are specified in the source, only the objects
  289. that have those flags are changed.
  290.    IMP:1=STIMPACK
  291. means that all IMP that will appear (at least) in difficulty level 1
  292. will be transformed into STIMPACK.
  293. This affects all IMP that have the '1' flag, not the ones that
  294. have only the '1' flag.
  295.  
  296. If difficulty flags are specified in the destination, the object
  297. remapped will have the specified flags.
  298.    IMP=STIMPACK:123
  299. means that all IMP will be transformed into STIMPACK and will appear
  300. on any level (except multiplayer mode).
  301.  
  302. The 'D' flag has no means if used in a source object.
  303. The 'M' flag works in different ways if used in source or destination
  304.    source:      only multiplayer-mode objects are changed
  305.    destination: the object appear only on multiplayer mode
  306.  
  307.  
  308.  
  309. ** DM2MKWAD
  310. -----------
  311. DM2MKWAD can create a wad file that contains all the missing textures
  312. from DOOM II. You will need both registered versions of DOOM and DOOM II
  313. to proceed.
  314. The output file is named DM2CONV.WAD and should be included in the list
  315. of patch wad files for DOOM II. example:
  316.    DOOM2 -FILE DM2CONV.WAD your.wad
  317. Using DM2CONV.WAD, you can eliminate the /TEXTURE switch when converting
  318. files to DOOM II: the original DOOM textures will be used.
  319. DM2MKWAD will not overwrite or delete any file other than DM2CONV.WAD.
  320. Before converting your first wad, please exit to DOS and type the
  321. following command:
  322.    DM2MKWAD
  323. then feed it with the appropriate information.
  324. If you use the DOOM2 response file and DM2CONV.WAD, remove the line in
  325. which appears /TEXTURE.
  326.  
  327.  
  328.  
  329. ** DMT
  330. ------
  331. Included in this version of DM2CONV is DMT: my first program developed
  332. for DOOM.
  333. Please note that DMT is not related with DM2CONV: I distribute it here
  334. because I think DMT could be of some help to someone.
  335. DMT fully supports DOOM, but not DOOM2 or HERETIC although many options
  336. will work well.
  337. I may write a full DOOM/DOOM2/HERETIC compatible version if there is
  338. enough interest in this type of program.
  339. DMT has no documentation yet: if anyone can (and will) write one,
  340. he/she should contact me (I'm Italian: my English is poor);
  341. however just type DMT to get a list of known commands: type
  342. DMT HELP command to get help about any commands.
  343. DMT is both a batch tool and a command-line program.
  344.  
  345. IF YOU ARE AN HACKER, TAKE A LOOK AT DMT!
  346.  
  347.  
  348.  
  349. ** SPECIAL CONSIDERATIONS
  350. -------------------------
  351. The sky resources are now remapped when converting to DOOM II.
  352. This is performed by renaming each SKY? (? can be 1, 2 or 3) resource to
  353. RSKY?. This operation is automatically done when new wads are converted:
  354. for wads already converted use the /IGNORE switch. If a level has a wall
  355. with a texture named SKY? (example: GALAXIA.WAD by Pavel Hodek) it will
  356. be displayed fine after the conversion.
  357. The sky remapping works only in DOOM2 conversions.
  358. The original DOOM skies are not included in the DM2CONV.WAD file. You
  359. can build a wad containing the DOOM's skies with the following command:
  360.    DMT -open DOOM.WAD -new SKIES -copy SKIES DOOM SKY*
  361. The output wad SKIES.WAD can be used directly with HERETIC or converted
  362. to be run with DOOM II:
  363.    DM2CONV SKIES SKIES2 /IGNORE
  364.  
  365. In the same way, you can build a wad containing all the DOOM's musics
  366. with the following command:
  367.    DMT -open DOOM.WAD -new MUSICS -copy MUSICS DOOM D_E?M?.M
  368. then you can convert this file to DOOM II:
  369.    DM2CONV MUSICS /M=1 /IGNORE
  370. or to HERETIC:
  371.    DM2CONV MUSICS /M=1 /IGNORE /HERETIC
  372.  
  373.  
  374.  
  375. ** KNOWN PROBLEMS
  376. -----------------
  377. Multi-level pwads can create problems with DOOM II because the level
  378. sequence cannot be replicated: DOOM has 3 episodes, each with 8 levels
  379. and 1 secret level, while DOOM II has 30 levels, 1 secret level and 1
  380. super-secret level.
  381. This means that accessing the secret level in a wad will load the
  382. 31th level of DOOM II instead of the ExM9 level of DOOM.
  383.  
  384. Monster substituition has a weak spot. When you change monsters with
  385. bigger ones, if these new monsters are too near a wall they cannot move
  386. because they collide with the scenario. It is the same as you type IDSPISPOPD
  387. (or IDCLIP for DOOM II, KITTY for HERETIC), then move into a wall and
  388. retype the code.
  389.  
  390.  
  391.  
  392. ** DISTRIBUTION LICENSE
  393. -----------------------
  394. All files in the original distribution package are PUBLIC DOMAIN.
  395. You can freely distribute these files (also separately) in any form.
  396. The files included inside DM2CNV17.ZIP are:
  397.    DM2CONV.EXE   the converter!
  398.    DM2CONV.PAS   source for DM2CONV
  399.    DM2CONV.DOC   documentation
  400.    DM2MKWAD.EXE  the wad builder
  401.    DM2MKWAD.PAS  source for DM2MKWAD
  402.    DOOM2.RSP     sample response file for DOOM II conversion
  403.    HERETIC.RSP   the standard response file for HERETIC conversion
  404.    OBJECTS.TXT   object comparison table for DOOM/DOOM2/HERETIC
  405.    DMT.EXE       manipulation tool
  406.    FILE_ID.DIZ   package description
  407.  
  408. For comments, bug reports, suggestions, etc.. please contact the author:
  409.  
  410.   snail-mail:
  411.     Vincenzo Alcamo
  412.     via Verdi 185
  413.     40059 Medicina (BO)
  414.     ITALY
  415.  
  416.   e-mail:
  417.     alcamo@arci01.bo.cnr.it
  418.  
  419. You can ask me by e-mail the latest version of DM2CONV:
  420. please state your current version and I will send you a new version
  421. when it will be available.
  422. You will receive an uuencoded zip file, unless you specify otherwise.
  423.  
  424.  
  425.  
  426. ** PROGRAM HISTORY
  427. ------------------
  428. 03/04/95  v1.7ß Special bug fix version:
  429.                 - texture names were case sensitive
  430.                   (reported by Thomas Beckmann)
  431.                 - strange substitutions with multi-level pwads
  432.                   (reported by Rick Weber)
  433.  
  434. 01/21/95  v1.6ß Resource renaming.
  435.                 Improved documentation.
  436.  
  437. 01/14/95  v1.5ß Sky resource remapping.
  438.                 Heretic support.
  439.                 External texture tables.
  440.                 Difficulty level supported.
  441.                 Some code rewritten.
  442.  
  443. 12/14/94  v1.2  Music remapping. Other minor changes.
  444.                 Sources released in the public domain.
  445.                 DMT tool distributed to check reactions.
  446.  
  447. 11/12/94  v1.0  The first release.
  448.                 DM2CONV.PAS should be in the distribution package:
  449.                 it wasn't for my fault.
  450.  
  451.